Defer the generated event to the mainloop and don't generate one at all if
authorRichard Hult <richard@imendio.com>
Mon, 31 Mar 2008 13:15:15 +0000 (13:15 +0000)
committerRichard Hult <rhult@src.gnome.org>
Mon, 31 Mar 2008 13:15:15 +0000 (13:15 +0000)
commita63c87c5da959505c667ab8f23df196fd0aeb6e5
tree9f1ad196f692d50f7f3221212d61d9ec081f1a89
parent129c717a719474815d5b92d2fcf5b3e75ba2aaf2
Defer the generated event to the mainloop and don't generate one at all if

2008-03-28  Richard Hult  <richard@imendio.com>

* gdk/quartz/gdkevents-quartz.c: (gdk_event_translate),
(_gdk_quartz_events_trigger_crossing_events): Defer the generated
event to the mainloop and don't generate one at all if the
toplevel didn't change. Use the actual window and not the toplevel
as event window. These changes make the generated crossing events
match the X11 behavior and fixes issues with e.g. tooltips,
comboboxes and menus.

* gdk/quartz/GdkQuartzView.c: Don't update the tracking rect if
the view has no window, it will be updated as soon as it's put
inside a window.

* gdk/quartz/gdkwindow-quartz.c:
(_gdk_quartz_window_debug_highlight): Make it possible to track
multiple windows with debug highlighting.
(show_window_internal): Remove workaround for tooltips and popups
that is no longer needed with the above changes.

svn path=/trunk/; revision=19951
ChangeLog
gdk/quartz/GdkQuartzView.c
gdk/quartz/gdkevents-quartz.c
gdk/quartz/gdkprivate-quartz.h
gdk/quartz/gdkwindow-quartz.c